package com.base.common.edu.mapper;

import com.base.common.edu.entity.Student;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @Author Maple.Chen
 * @Description 数据交互层-Student
 * @Date 0:27 2021/2/10
 **/
@Mapper
@Repository
public interface StudentMapper {

    // 添加学生信息
    int saveStudent(@Param("stu") Student student);
    // 批量导入学生信息
    int saveStudentAsBatch(List<Student> studentList);
    // 学生登录
    Student studentLogin(@Param("sno") String sno, @Param("pass")String passwd);
    // 学生邮箱登录
    Student studentLoginUseEmail(@Param("email") String email, @Param("pass")String passwd);
    // 查询学生信息
    List<Student> queryStudents(@Param("stu") Student student);
    // 修改学生信息
    int updateStudent(@Param("stu") Student student);
    // 删除学生信息
    int deleteStudent(@Param("stuId") String id);
    // 根据学生id查询学生信息
    Student queryStudentById(String stu__id);
    // 根据学生学号查询学生信息
    Student queryStudentBySno(String sno);

    // 判断具有唯一性的列是否被占用:  Sno(Tno)、IdcardNo、Email
    int judgeIsItOccupied(@Param("stno") String stno, @Param("idcard") String idcard, @Param("mail") String mail);

}
